/* 
  使用ES6默认导出一个对象,这个配置对象中的属性有如下
  namespaced:true:声明一个模块
  state:{}：该模块中的状态
  mutations:{}:该模块中的mutations的方法
  actions:{}:该模块中的异步方法
  getters:{}:对state做计算操作的
*/
export default{
    namespaced:true,
    state:{
        num:10
    },
    mutations:{
        incrementSync(state,payload){
            state.num=state.num+payload
        }
    },
    actions:{
        incrementAsync(cxt,payload){
            setTimeout(() => {
                cxt.commit('incrementSync',payload)
            }, 2000);
        }
    },
    getters:{
        doubleNum(state){
            return state.num*2
        }
    }
}